package Year22_Month06.day17;

import java.util.LinkedList;
import java.util.Queue;

public class 另一棵树的子树_递归写法 {
    public boolean isSubtree(TreeNode root, TreeNode subRoot) {
        //因为题目提前就已经说了，两棵树都不为空，所以这里就单单让母树不为空就行
        if(root == null) return false;
        //这里的话注意一下方法的名称
        return isSame(root,subRoot) || isSubtree(root.left,subRoot) || isSubtree(root.right,subRoot);
    }
    //这里用递归来写两颗二叉树的遍历过程
    public boolean isSame(TreeNode node1,TreeNode node2){
            if(node1 == null && node2 == null) return true;
            if(node1 != null && node2 != null && node1.val == node2.val){
                return isSame(node1.left,node2.left) && isSame(node1.right,node2.right);
            }
            return false;
    }
}
